Systems and methods for calibrating a tunable component

ABSTRACT

Systems, devices, and methods for adjusting tuning settings of tunable components, such as tunable capacitors, can be configured for calibrating a tunable component. Specifically, the systems, devices and methods can measure a device response for one or more inputs to a tunable component, store a calibration code in a non-volatile memory that characterizes the device response of the tunable component, and adjust a tuning setting of the tunable component based on the calibration code to achieve a desired response of the tunable component.

PRIORITY CLAIM

The present application claims the benefit of U.S. Provisional PatentApplication Ser. No. 61/901,911, filed Nov. 8, 2013, the disclosure ofwhich is incorporated herein by reference in its entirety.

TECHNICAL FIELD

The subject matter disclosed herein relates generally to control oftunable components. More particularly, the subject matter disclosedherein relates to adjusting tuning settings of tunable components, suchas tunable capacitors.

BACKGROUND

Programmable capacitors can be used for tuning the response of anelectrical circuit by varying the capacitance value of the capacitor tocorrespondingly produce different behaviors. In many applications, theset value may need to be tightly controlled to meet system requirementsand optimize overall performance. In general, however, although suchcapacitors are commonly built using a range of processes, all processesexhibit variations due to factors such as rates, chemistries,temperatures, and timing. As a result, substantially all programmablecapacitors as built have a range of values (e.g., for maximumcapacitance value, minimum capacitance value, capacitance step betweenset values). This range may be acceptable for some applications, butwhen a more precise response is required, it is desirable that variationin the capacitance values be minimized.

To address these issues, attempts have been made to reduce the variationin the manufacturing process, but raising performance standardsgenerally requires either exerting more precise control over theproduction process or discarding components that fail to meet the higherstandards. Both of these approaches increase the cost of producing thecomponents. Alternatively, the capacitors can be designed to reduce thesensitivity of the device capacitance on the process variation, butdoing so is not possible in all device configuration and/orapplications. As a result, it would be desirable for the variation inthe performance of devices to be reduced without dramatically increasingmanufacturing costs or requiring component designs to be constrained toonly those configurations that are less sensitive to processvariability.

SUMMARY

In accordance with this disclosure, systems, devices, and methods foradjusting tuning settings of tunable components, such as tunablecapacitors, are provided. In one aspect, a method for calibrating atunable component is provided. The method can include measuring a deviceresponse for one or more inputs to a tunable component, storing acalibration code in a non-volatile memory that characterizes the deviceresponse of the tunable component, and adjusting a tuning setting of thetunable component based on the calibration code to achieve a desiredresponse of the tunable component.

In another aspect, a tunable component is provided having one or moretunable elements and a non-volatile memory configured to store acalibration code that characterizes a device response of the one or moretunable elements.

Although some of the aspects of the subject matter disclosed herein havebeen stated hereinabove, and which are achieved in whole or in part bythe presently disclosed subject matter, other aspects will becomeevident as the description proceeds when taken in connection with theaccompanying drawings as best described hereinbelow.

BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of the present subject matter will be morereadily understood from the following detailed description which shouldbe read in conjunction with the accompanying drawings that are givenmerely by way of explanatory and non-limiting example, and in which:

FIG. 1 is a flow chart illustrating a method for calibrating a tunablecomponent according to an embodiment of the presently disclosed subjectmatter;

FIG. 2 is a schematic view of a tunable component according to anembodiment of the presently disclosed subject matter;

FIG. 3 is a flow chart illustrating a method for calibrating the tunablecomponent shown in FIG. 2 according to an embodiment of the presentlydisclosed subject matter;

FIG. 4 is a schematic view of a tunable component according to anembodiment of the presently disclosed subject matter;

FIG. 5 is a flow chart illustrating a method for calibrating the tunablecomponent shown in FIG. 4 according to an embodiment of the presentlydisclosed subject matter.

DETAILED DESCRIPTION

Rather than relying on controlling the production of the tunable devicesto minimize the variation in performance and/or to minimize the impactof the variation, the present subject matter provides systems andmethods that are designed to compensate for the variation throughappropriate control. In this way, more precise device response valuescan be available, and higher yields can be achieved for a giventolerance.

In this regard, in one aspect, the present subject matter provides amethod for calibrating a tunable component, such as a tunable capacitor.As illustrated in FIG. 1, the performance of a given tunable device canbe characterized in a measurement step 10. Specifically, measurementstep 10 can comprise measuring a device response for one or more inputsto a tunable component. For example, for a tunable capacitor, measuringthe device response can comprise measuring a capacitance at one or moretuning states. Such a measurement can be obtained at a final device testor in an application final test (e.g. filter response). Based on themeasurement, the deviation from the nominal response can be noted. Inparticular, a calibration digital word that characterizes the deviceresponse of the tunable component can be written into a non-volatilememory on the device in a storing step 20.

Upon receiving an input 30 that identifies the desired response (e.g.,the desired total capacitance), this calibration digital word canthereafter be used in a calibration step 40 to modify the tuning wordthat is applied to control the device. As will be discussed in furtherdetail below, in some configurations, such modification can be performedexternally from the device by reading the calibration digital word fromthe device and calculating the appropriate modified control wordrequired for any desired tuned value. This calculation can be performedfor an entire control table at system reset and/or it can be performedon-the-fly as required during operation. Alternatively, in someconfigurations, the compensation can be performed on the tunable deviceitself by modifying control words written to the device by the systemusing on-board circuits/logic.

In any configuration, the calibrated tuning word can be applied in atuning step 50 to adjust a tuning setting of the tunable component basedon the calibration code. In this way, a desired response of the tunablecomponent can be achieved that compensates for the manufacturingvariation and yields a more precisely tuned value.

Within this general framework, the present subject matter can beimplemented in any of a variety of configurations. In one embodimentshown in FIG. 2, for example, a tunable component, generally designated100, can include one or more tunable elements and can be is configuredto compensate for any variation in the performance of its tunableelements. In particular, for example, the one or more tunable elementscan be one or more tunable capacitors. Tuning of the tunable elementscan be achieved by applying a tuning word that is stored in a tuningword register 110. As discussed above, however, due to the variabilityin the performance of the tunable elements, calibration of the tuningword can be desirable such that a given desired output can be achieved.

In this regard, tunable component 100 can further include a non-volatilememory 120 configured to store one or more calibration code thatcharacterizes a device response of the one or more tunable elements.Specifically, in some embodiments, the calibration code can comprise oneof a plurality of “bin” identifiers that characterizes one or more ofthe tunable elements as exhibiting a device response that falls withinone of a plurality of discrete device response ranges (e.g., less than70% of the designed response for a given input, less than 80%, less than90%, etc.). Accordingly, non-volatile memory 120 can be configured tostore one of the plurality of bin identifiers associated with a discretedevice response range of the tunable component. In some embodiments, anindividual bin identifier can be selected to characterize a deviceresponse of each tunable element of the tunable component.Alternatively, in some embodiments, the bin identifier can be selectedto characterize an aggregate device response of an array of tunableelements of the tunable component.

Regardless of how the bin identifier characterizes the deviceperformance, tuning of tunable component 100 can involve communicationwith a driver 200 that is distinct from tunable component 100 (e.g., byway of a serial data link). Driver 200 can have access to a plurality oftuning word tables (e.g., first, second, third, and fourth tuning wordtables 210 a, 210 b, 210 c, and 210 d shown in FIG. 2). In someembodiments, for example, the number of tuning words can be equal to aninteger multiple of the number of bin identifiers (i.e., one or moretuning word for every bin)

With this configuration for tunable component 100, the method for tuningtunable component 100 can be implemented as shown in FIG. 3. Inparticular, calibration step 40 can comprise reading the bin number fromthe storage on tunable component 100 in a bin retrieval step 41. Then,for a given input 30, a tuning word selection step 42 can compriseselecting one or more of a plurality of tuning words (e.g., selectedfrom tuning word tables 210 a, 210 b, 210 c, and 210 d) corresponding tothe stored one of the plurality of bin identifiers.

In this regard, the bin identifier can effectively be used as an indexto filter within a tuning-word matrix. As shown in Table 1 below, forexample, a portion of a tuning word matrix is provided in which therange of capacitance values achievable by a device are associated withboth a bin identifier and a tuning word (e.g., identified as t-2.000through t-3.000). In this way, once the matrix is filtered by theidentified bin, a tuning word can be selected to achieve the desiredoutput. For example, if a response of 2.000 is desired and the binidentifier is 80%, a tuning word of t-2.500 would be utilized. Note thatthe step size between tuning words and between bins may be product-and/or application-specific.

TABLE 1 120% bin 100% bin 80% bin 70% bin t-3.000 3.600 3.000 2.4002.100 t-2.875 3.450 2.875 2.300 2.013 t-2.750 3.300 2.750 2.200 1.925t-2.625 3.150 2.625 2.100 1.838 t-2.500 3.000 2.500 2.000 1.750 t-2.3752.850 2.375 1.900 1.663 t-2.250 2.700 2.250 1.800 1.575 t-2.125 2.5502.125 1.700 1.488 t-2.000 2.400 2.000 1.600 1.400

In addition, the desired response can be controlled to be within thediscrete device response range of the bin identifier having the smallestdiscrete device response range to maximize yield. Specifically, forexample, for a device having a response range specification minimum thatis 70% of a designed response range (i.e., 70% bin), the desiredresponse can be selected to provide similar responses for other bins. Asshown in Table 2 below, for example, settings for devices operatingwithin the upper bin values can be backed off to achieve a total outputthat is as close as possible in value to the values achieved by areference device operating in the 70% bin (e.g., within the limits ofthe resolution of the tuning steps available).

TABLE 2 120% bin 100% bin 80% bin 70% bin 3.600 → 2.100 3.000 → 2.1252.400 → 2.100 2.100 3.450 → 1.950 2.875 → 2.000 2.300 → 2.000 2.0133.300 → 1.950 2.750 → 1.875 2.200 → 1.900 1.925 3.150 → 1.800 2.625 →1.875 2.100 → 1.800 1.838 3.000 → 1.800 2.500 → 1.750 2.000 → 1.8001.750 2.850 → 1.650 2.375 → 1.625 1.900 → 1.700 1.663 2.700 → 1.6502.250 → 1.625 1.800 → 1.600 1.575 2.550 → 1.500 2.125 → 1.500 1.700 →1.500 1.488 2.400 → 1.350 2.000 → 1.375 1.600 → 1.400 1.400

In addition, the specific tuning word(s) used can be selected based onother variables in addition to the bin, which may be used in computingthe desired tuning word, selection from a multi-dimensional selectionmatrix, or a combination of the two. For example, parameters such as afrequency or frequencies of operation, platform configurations,temperature, power level, data from sensors, or other variables can beconsidered in the selection of the tuning word (or words) to be used toachieve a desired output.

A subset of the full set of tuning words corresponding to the bin can bedown-selected based on the bin identifier. This subset can be readduring power up or in similar circumstances so that only the words thatare of use would be in active memory for selection. In this way, the‘active’ memory used during operation only needs to read in therow/column of a tuning word matrix that corresponds to the binidentifier at that initial stage. The rest can stay in long-termstorage. This pre-selection of the relevant subset of a global tuningword matrix can save processor memory and time.

Alternatively, in another configuration shown in FIG. 4, tunablecomponent 100 can be configured to perform on-chip recalibration oftuning words rather than having the tuning word adjustment done bydriver 200. In this regard, tunable component 100 can further include alogic block 130 configured to generate a tuning word that is selectedbased on the calibration code to produce a response of the one or moretunable elements that substantially matches a desired response. In someembodiments, logic block 130 is included within logic of tunablecomponent 100. In the configuration where the tunable elements aretunable capacitors, for example, logic block 130 can be configured togenerate a tuning word that is selected to produce a total capacitanceof the tunable capacitors that substantially matches a desired totalcapacitance. This off-loading of the turning word selection from driver200 can allow for easier driver development and operation. In addition,customer engineering can be more easily designed during applicationdevelopment.

In some embodiments, non-volatile memory 120 can again be configured tostore one of a plurality of bin identifiers as discussed above. In thisconfiguration, however, logic block 130 can be used to select one ormore of a plurality of tuning words corresponding to the stored one ofthe plurality of bin identifiers rather than driver 200. Alternatively,logic block 130 can be configured to receive a reference tuning wordcorresponding to the desired response, and logic block 130 can beconfigured to generate the tuning word that is selected to produce theresponse of the one or more tunable elements that substantially matchesthe desired response by modifying the reference tuning word based on thecalibration code.

Specifically, in some embodiments, non-volatile memory 120 can beconfigured to store one or more coefficients of a calibration tuningfunction. For example, for a first-degree polynomial function C=a·C₁+C₂,where a is an element of a variable tuning input, the calibration codecan define a set of coefficients [C₁, C₂] that most closely maps thefunction C to the measured performance capabilities of tunable component100. In addition, those having skill in the art will recognize that thefunction can also be a higher-order polynomial or a more complexfunction that models the device response for a given set of calibrationcoefficients.

With this on-chip calibration configuration, adjusting a tuning settingcan be performed as shown in FIG. 5. Specifically, for a given input 30,a baseline tuning word corresponding to the desired response can becommunicated by driver 200 to tunable component 100 in an initialselection step 45. Tunable component 100 can then itself generate amodified tuning word in a calculation step 46 (e.g., at logic block 130)based on the calibration code to produce a response of the tunablecomponent that substantially matches the desired response.

Furthermore, the operation of tunable component 100 can be designed suchthat the desired response has a first numerical resolution, but theresponse of tunable component 100 has a second numerical resolution thatis finer than the first numerical resolution. For example, for a tunablecapacitor array, the desired response can be configured to define valuesto the nearest 0.125 pF, whereas the tunable capacitor array can beconfigured to produce values to the nearest 0.0625 or 0.03125 pF. Inthis way, even though the device performance may deviate from thedesigned levels, fine adjustments can be made to get the performancevery close to the desired values.

The present subject matter can be embodied in other forms withoutdeparture from the spirit and essential characteristics thereof. Theembodiments described therefore are to be considered in all respects asillustrative and not restrictive. Although the present subject matterhas been described in terms of certain preferred embodiments, otherembodiments that are apparent to those of ordinary skill in the art arealso within the scope of the present subject matter.

What is claimed is:
 1. A method for calibrating a tunable component, themethod comprising: measuring a device response for one or more inputs toa tunable component; storing a calibration code in a non-volatile memoryprovided on the tunable component that characterizes the device responseof the tunable component; and adjusting a tuning setting of the tunablecomponent based on the calibration code to achieve a desired response ofthe tunable component.
 2. The method of claim 1, wherein the tunablecomponent comprises one or more tunable capacitor; and wherein measuringthe device response comprises measuring a capacitance of the one or moretunable capacitor at one or more tuning states.
 3. The method of claim1, wherein storing a calibration code comprises storing one of aplurality of bin identifiers that are each associated with a discretedevice response range of the tunable component.
 4. The method of claim3, wherein the desired response is selected to be within the discretedevice response range of the one of the plurality of bin identifiershaving the smallest discrete device response range.
 5. The method ofclaim 3, wherein the one of the plurality of bin identifiers is selectedto characterize a device response of a single tunable element of thetunable component.
 6. The method of claim 3, wherein the one of theplurality of bin identifiers is selected to characterize an aggregatedevice response of an array of tunable elements of the tunablecomponent.
 7. The method of claim 3, wherein adjusting a tuning settingcomprises: retrieving the one of the plurality of bin identifiers fromthe non-volatile memory; selecting one or more of a plurality of tuningwords corresponding to the stored one of the plurality of binidentifiers; and applying the selected one or more of the plurality oftuning words to the tunable component.
 8. The method of claim 7, whereinthe number of tuning words is equal to an integer multiple of the numberof bin identifiers.
 9. The method of claim 1, wherein storing acalibration code comprises storing one or more coefficients of acalibration tuning function.
 10. The method of claim 1, whereinadjusting a tuning setting comprises: receiving a tuning wordcorresponding to the desired response; and generating a modified tuningword that is selected or computed based on the calibration code toproduce a response of the tunable component that substantially matchesthe desired response.
 11. The method of claim 10, wherein the desiredresponse has a first numerical resolution; and wherein the response ofthe tunable component has a second numerical resolution that is finerthan the first numerical resolution.
 12. The method of claim 10, whereingenerating a modified tuning word is performed by a software driver thatis distinct from the tunable component.
 13. The method of claim 10,wherein generating a modified tuning word is performed by a logic blockassociated with the tunable component.
 14. A tunable componentcomprising: one or more tunable elements; and a non-volatile memoryconfigured to store a calibration code that characterizes a deviceresponse of the one or more tunable elements.
 15. The tunable componentof claim 14, wherein the one or more tunable elements comprise one ormore tunable capacitors.
 16. The tunable component of claim 14, whereinthe non-volatile memory is configured to store one of a plurality of binidentifiers that are each associated with a discrete device responserange of the one or more tunable elements.
 17. The tunable component ofclaim 14, wherein the non-volatile memory is configured to store one ormore coefficients of a calibration tuning function.
 18. The tunablecomponent of claim 14, comprising a logic block configured to generate atuning word that is selected based on the calibration code to produce aresponse of the one or more tunable elements that substantially matchesa desired response.
 19. The tunable component of claim 18, wherein theone or more tunable elements comprise one or more tunable capacitors;and wherein the logic block is configured to generate a tuning word thatis selected to produce a total capacitance of the one or more tunablecapacitors that substantially matches a desired capacitance.
 20. Thetunable component of claim 18, wherein the non-volatile memory isconfigured to store one of a plurality of bin identifiers that are eachassociated with a discrete device response range of the one or moretunable elements; and wherein the logic block is configured to selectone or more of a plurality of tuning words corresponding to the storedone of the plurality of bin identifiers.
 21. The tunable component ofclaim 18, wherein the logic block is configured to receive a referencetuning word corresponding to the desired response; and wherein the logicblock is configured to generate the tuning word that is selected toproduce the response of the one or more tunable elements thatsubstantially matches the desired response by modifying the referencetuning word based on the calibration code.
 22. The tunable component ofclaim 21, wherein the desired response has a first numerical resolution;and wherein the one or more tunable elements are configured to generateresponse values having a second numerical resolution that is finer thanthe first numerical resolution.